Various graphical user interfaces have been developed to provide a rich experience for computer users. Computer programs typically provide a graphical user interface (GUI) to facilitate data entry, to enable viewing output on a display screen, as well as to manipulate or rearrange data. A graphical user interface can be associated with an application program or operating system shell, which may be running on a user's local machine and/or remotely, such as in a distributing computing system or over the Internet.
In view of continuing technological developments and increasing use of the Internet, people are using computers to access information to an ever-increasing extent. Such information can reside locally on the person's computer or within a local network or be global in scope, such as over the Internet. Various approaches have been employed to help users locate and access desired data. In the context of the Internet, for example, some services have organized content based on a hierarchy of categories. A user can thus navigate through a series of hierarchical menus to find content that may be of interest to them. With this hierarchal approach, if a user mistakenly believes that a category will be of interest or include what they were looking for, but the category turns out to be irrelevant, the user must backtrack through one or more hierarchical levels of categories.
Additional complexities arise when a user desires access to multimedia data having a graphical component or image known to the user. This is because most conventional user interfaces employ a hierarchal approach to organizing data and have not been developed to facilitate concurrent viewing of large data sets, such as images associated with multimedia data.
By way of example, one approach is to visualize a large set of graphical images is to present such images as thumbnails arranged in a two-dimensional list that a user may scroll through. Alternatively, one or more thumbnails can be provided on different pages, such as in a traditional photo album approach. When the images are presented as thumbnails, for example, a user may activate a thumbnail to provide a larger or full size image.
Another approach is to present images as a grid of thumbnails, which may be organized or grouped images together in partitions based on common attributes. Such systems, however, typically are two-dimensional systems that provide little flexibility to the user. As a two-dimensional system, the number of images that can be displayed at a given time is generally limited by the size of the thumbnails and the overall dimensions of the image space on which they are displayed.